
/*
*Released on 28th June 2008.
*Any violations can be reported at paritosh@wikiocean.net
*What is treated as violations can be found at www.wikiocean.net/ppl1-voilations*
******************************************************************************
* The contents of this file are subject to POOL Public License 1.0 and later.
* POOL Public License is based on Affero GPL v3 and additional conditions.
* ("License"); You may not use this file except in compliance with the License
* You may obtain a copy of the Affero GPL v3 License at http://www.gnu.org/licenses/agpl.html
* You may obtain a copy of the POOL Public License 1.0 or later at www.wikiocean.net/license/ppl.html
* Software distributed under POOL Public License 1.0 is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Initial Developer of the Original Code is Paritosh Pungaliya (C) 2008. All Rights Reserved.
******************************************************************************
* Objective of the additional terms (license)
* 1) Is to extend the software freedom to freedom to work.
* 2) To ensure that knowledge is free from monopoly of agencies.
* 3) To avoid a situation where big corporate or investor can buy out free software groups and companies and then start milking the communities built around it.
* (this trend can be seen how the freedom is curtailed in companies that get Venture Capital funding.)
******************************************************************************
*/

package  dbmanager;

import java.sql.*;
import java.util.Hashtable;

import logger.PoolLogger;

/**
 * @author
 * This class Checks existence of string in Master_table and propety_detils table
 *   
 **/
public class ChekInMaster 
{
	String sqlTable = "master_table";	
	ResultSet rs;
	PoolLogger pl;
	
	/**
	 * Parameterise Constructor
	 * @param db Gets DBManager object reference
	 * @exception Exception
	 * **/
	public ChekInMaster() 
	{
		// logger
		pl = (PoolLogger) PoolLogger.getLogger(this.getClass().getName());
	}
	/**
	 * Parameterise Constructor
	 * @param db Gets DBManager object reference
	 * @exception Exception
	 * **/
	public boolean isInMaster(String word)
	{
		boolean isInMaster = false;
		try
		{
			String _query = "SELECT distinct Name FROM "+sqlTable+" WHERE lower(Name)=lower('"+word+"')";
			ResultSet rs2 = DBManager.getSelect(_query);
			if(rs2.next())
			{
				System.out.println("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
				pl.info("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
				pl.debug("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
		    	pl.warn("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
		    	pl.fatal("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
		    	pl.error("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
		    	pl.trace("utility::ChekInMaster::isInMaster()::The word in master is "+rs2.getString(1));
				isInMaster = true;
			}
			else
			{
				System.out.println("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
				pl.info("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
				pl.debug("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
		    	pl.warn("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
		    	pl.fatal("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
		    	pl.error("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
		    	pl.trace("utility::ChekInMaster::isInMaster()::The word is not in master"+word);
				
				isInMaster = false;
			}
		}
		catch(Exception e)
		{
			System.out.println("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
			pl.info("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
			pl.debug("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
	    	pl.warn("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
	    	pl.fatal("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
	    	pl.error("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
	    	pl.trace("utility::ChekInMaster::isInMaster():: Error in isInMaster(String word)");
			
			e.printStackTrace();
			return(false);
		}
		return(isInMaster);
	}
	/**
	 * This method is used to check given string in master table
	 * @return  true Existence of Specified string
	 * @param word  Gets the string
	 * @param hasht Gets the hash map values
	 * 	 * **/
	public boolean isInProperty_details(Hashtable<Object, Object> hasht,String tableName)
	{
		boolean isInProperty_details = false;
		try
		{
			ResultSet rs  = DBManager.getselect(hasht, tableName);
			
			if(rs.next())
			{
				System.out.println("utility::ChekInMaster::isInProperty_details()::The word is present");
				pl.info("utility::ChekInMaster::isInProperty_details()::The word is present");
				pl.debug("utility::ChekInMaster::isInProperty_details()::The word is present");
		    	pl.warn("utility::ChekInMaster::isInProperty_details()::The word is present");
		    	pl.fatal("utility::ChekInMaster::isInProperty_details()::The word is present");
		    	pl.error("utility::ChekInMaster::isInProperty_details()::The word is present");
		    	pl.trace("utility::ChekInMaster::isInProperty_details()::The word is present");
				
				isInProperty_details = true;
			}
			else
			{
				System.out.println("utility::ChekInMaster::isInProperty_details()::The word is not present");
				pl.info("utility::ChekInMaster::isInProperty_details()::The word is not present");
				pl.debug("utility::ChekInMaster::isInProperty_details()::The word is not present");
		    	pl.warn("utility::ChekInMaster::isInProperty_details()::The word is not present");
		    	pl.fatal("utility::ChekInMaster::isInProperty_details()::The word is not present");
		    	pl.error("utility::ChekInMaster::isInProperty_details()::The word is not present");
		    	pl.trace("utility::ChekInMaster::isInProperty_details()::The word is not present");
				
				isInProperty_details = false;
			}
		}
		catch(Exception e)
		{
			System.out.println("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
			pl.info("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
			pl.debug("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
	    	pl.warn("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
	    	pl.fatal("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
	    	pl.error("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
	    	pl.trace("utility::isInProperty_details::isInProperty_details():: Error in isInProperty_details(String word)");
			
			e.printStackTrace();
			return(false);
		}
		return(isInProperty_details);
	}
}